home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / T-TPUG Old Monthly Disks / (c)t3.d64 / long division.c (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  1KB  |  59 lines

  1. 100 REM LONG DIVISION
  2. 101 PRINT""
  3. 130 POKE53281,15:POKE53280,15
  4. 140 PRINT"[147]==== LONG DIVISION ==="
  5. 150 PRINT"TORONTO PET USERS GRP"
  6. 190 PRINT"PRESS 'E' TO STOP"
  7. 220 PRINT" LEVEL OF DIFFICULTY ?"
  8. 230 DEFFNT(T)=15-INT(LOG(T)/LOG(10))
  9. 240 DIMQ$(4),Q(4),B(3)
  10. 250 INPUT"     (0-9)";G:IFG=0THENG=1
  11. 260 PRINT"[147][144]"
  12. 270 L=G*2:IFG>6THENL=99
  13. 280 A=INT(L*RND(TI)+1):BB=INT(998*RND(TI)+1)
  14. 290 IFA=1ORBB<ATHEN280
  15. 300 D=A*BB
  16. 310 IFD<1000THEN280
  17. 320 B(1)=INT(BB/100):B(2)=INT((BB-100*B(1))/10)
  18. 330 B(3)=BB-100*B(1)-10*B(2)
  19. 340 PRINT"[147]"
  20. 350 PRINTTAB(5);"[167][163][163][163][163][163][163][163]"
  21. 360 PRINTA;TAB(5);"[170]";TAB(FNT(D)-5);D;:PRINT"[145][145][145]"
  22. 370 FORI=1TO3
  23. 380 IFSW=1THENQ$(I)=STR$(B(I)):PRINTTAB(FNT(BB)-5);BB:GOTO430
  24. 390 IFI=1ANDB(1)=0THENQ$(1)="0":GOTO420
  25. 400 GETQ$(I):IFQ$(I)=""THEN400
  26. 410 IFQ$(I)="E"THEN660
  27. 420 PRINTTAB(8+I);Q$(I)
  28. 430 Q(I)=VAL(Q$(I))
  29. 440 D=D-A*Q(I)*INT(1000/10^I+.05)
  30. 450 IFNC=1THENPRINT"[145][145]":GOTO570
  31. 460 IFI=1THENPRINT""
  32. 470 IFI=2THENPRINT""
  33. 480 IFI=3THENPRINT""
  34. 490 IFQ(I)=0THENPRINTTAB(10);0:GOTO510
  35. 500 PRINTTAB(FNT(A*Q(I))-8+I);-A*Q(I)
  36. 510 PRINTTAB(7);"-----"
  37. 520 IFD=0THENPRINTTAB(10);0:GOTO550
  38. 530 IFD<0THEND=-D:GOTO600
  39. 540 PRINTTAB(FNT(D)-5);INT(D/10^(2-I))
  40. 550 IFI=1THENPRINT"[145][145][145][145][145][145][145]"
  41. 560 IFI=2THENPRINT"[145][145][145][145][145][145][145][145][145][145]"
  42. 570 NEXTI
  43. 580 PRINT""
  44. 590 IFSW=1THENGOSUB710:GOTO620
  45. 600 IFD>0THENPRINT"SORRY- YOU ARE WRONG":FORT=1TO1500:NEXT:GOTO640
  46. 610 IFD=0THENC=C+1:PRINT"YOU ARE RIGHT- GOOD":FORT=1TO2000:NEXT
  47. 620 IFSW=1THENSW=0
  48. 630 GOTO280
  49. 640 SW=1:C1=C1+1
  50. 650 GOTO300
  51. 660 M$="S":IFC=1THENM$=""
  52. 670 POKE53281,15:POKE53280,15:PRINT"[147][144]YOU GAVE";C:PRINT"CORRECT ANSWER";M$
  53. 680 M$="S":IFC1=1THENM$=""
  54. 690 PRINT"AND"C1"WRONG ANSWER";M$
  55. 700 END
  56. 710 PRINT"THE CORRECT ANSWER IS"
  57. 720 GETA$:IFA$=""THEN720
  58. 730 RETURN
  59.